Slope predictive control and digital PID control for a variable temperature control system

ABSTRACT

The present invention applies a slope predictive control method to a Variable Temperature Control (VTC) system, measuring the slope of the discharge temperature as a function of flow regulation device position, and using this slope to predict the position of the flow regulation device needed to achieve the desired discharge temperature. The present invention also monitors the response of the VTC over time and utilizes a self-learning algorithm to predict the response time of the system in order to determine when further control adjustments need to be taken.

RELATED APPLICATIONS

The present application is a divisional application of U.S. applicationSer. No. 10/804,278, filed Mar. 19, 2004, now allowed, which is acontinuation-in-part of U.S. application Ser. No. 10/425,136, filed Apr.28, 2003, now U.S. Pat. No. 6,715,690, which is a continuation of U.S.application Ser. No. 09/850,422, filed May 7, 2001, now U.S. Pat. No.6,554,198, the contents of all of which are incorporated herein in theirentirety by reference.

TECHNICAL FIELD

The present invention relates generally to control systems. Moreparticularly, the present invention relates to Variable Air Volume (VAV)and Variable Temperature Control (VTC) temperature control systems.

BACKGROUND OF THE INVENTION

Variable Air Volume (VAV) temperature control systems control thetemperature within a room by modulating the amount of cool (or warm) airthat is blown into the room by the heating and air conditioning system.A pressure dependent VAV temperature control system uses a temperaturecontrol loop to accomplish a temperature control algorithm. Thetemperature control loop attempts to maintain a room temperaturesetpoint by using readings from a room temperature sensor to control adamper in a VAV box. Opening and closing the damper in the VAV boxvaries the airflow through the VAV box into the room.

One drawback to pressure dependent VAV temperature control systems isthat a central Air Handling Unit supplies air to many VAV boxes and whenthe damper of one VAV box is opened or closed to adjust the temperaturein its associated room, the airflow into the other rooms will beaffected. This can cause the temperature control loops to “fight” eachother, as a temperature change in one room will likely cause a flowchange in the other rooms. As a result of the flow changes in the otherrooms, the temperatures in those rooms will also change and as the VAVboxes in those rooms react to the temperature changes, they will causemore flow changes and the cycle is repeated. Accordingly, pressuredependent VAV control systems can be inefficient for controlling aheating, ventilation and air conditioning (HVAC) system within asufficiently large building having multiple rooms.

A pressure independent VAV control system overcomes the problem oftemperature control loops “fighting” each other and thus can be moreefficient for controlling HVAC system in large buildings. A pressureindependent VAV system uses two basic control loops to accomplish thetemperature control algorithm. These two basic control loops include aflow control loop for maintaining a specified airflow to the room and atemperature control loop for adjusting the airflow setpoint (specifiedairflow) of the flow control loop based upon the room temperature. Apressure independent VAV control system thus maintains the specifiedairflow into the room regardless of pressure changes caused by airflowchanges in other rooms.

However, pressure independent VAV control systems also have associateddrawbacks. For example, one problem with a typical flow control loop inpressure independent systems is that it is very difficult to providestable airflow into the room without excessively modulating the damper.The excessive modulation of a damper eventually causes the damper tofail and require replacement. System downtime and maintenance expensesincurred due to failed dampers are common problems in the temperaturecontrol industry.

Another drawback associated with a typical flow control loop in apressure independent VAV control system is the effect of turbulent flowin the air ducts of the system. Electronic sensors can accuratelymeasure instantaneous flow in the air ducts, but the turbulent flow cancause the resulting signals to be very noisy. If the noise in thesignals is not filtered in some manner, the flow control loop will reactto the peaks and valleys of the signals. As a result, the dampers in theVAV boxes will be continuously adjusted in response to the peaks andvalleys in the signals, instead of being adjusted in response to whatreally affects the room temperature, which is the average airflow intothe room over time.

Yet another problem associated with the typical flow control loop of apressure independent VAV control system results from the inherentnon-linear response curve of each damper within each VAV box and fromthe fact that the electric motors which move these dampers can bedamaged by repeated short pulses of current which attempt to move thedamper a very short distance. If the pulse is short enough, the motormay not build up enough torque to overcome the static friction needed tomove at all. If the damper doesn't move, the flow conditions won'tchange so the control system will give it another short pulse. If noadditional protection is taken, the control system can pulse the motorindefinitely and damage the motor.

To prevent this potential for indefinite pulsing, a minimum run time of,say, one second is typically provided by the motor control circuitry. Ifthe damper controller turns the motor on for even a brief time, themotor control circuit will run the motor for at least one second,ensuring enough torque is developed to actually move the damper. Thiswill, in turn, produce a change in the airflow. If less than a onesecond movement was needed to bring the flow to setpoint, this onesecond minimum run time can drive the damper too far and result in aflow reading on the other side of the setpoint. Without additionalprotection, this would result in the controller giving a short pulse tothe damper to move it in the other direction.

The minimum run time would again cause the damper to overshoot thesetpoint, and the system could cycle indefinitely, causing excessivewear on the damper and the motor. To prevent this, a deadband istypically set so that the dampers do not move if the measured flow iswithin a specified tolerance of the setpoint. To prevent cycling, thisdeadband must be greater than the change in flow caused by a one seconddamper movement. The “worst case situation,” where a little dampermovement produces a large change in airflow, typically occurs aboutmid-range on the damper response curve. In order to avoid cycling inthis worst case situation, the flow control loop needs a deadband whichis at least as wide as the flow change produced by a one second dampermovement at this point.

However, a wide deadband produces inaccurate control at the low and highend of the damper response curve. The low end of the damper responsecurve is particularly problematic, because of indoor air qualityconcerns. A temperature control system not only modulates the airflow tokeep the temperature in the room at a comfortable level, but alsoprovides the minimum fresh air ventilation for the room. Therefore, alow flow rate and a very wide deadband may cause the airflow controlloop to maintain a flow rate that is below the minimum ventilation flow,and cause a problem for indoor air quality.

While the aforementioned problems affect the flow control loop inpressure independent VAV systems, the temperature control loop in suchsystem may also suffer from problems that affect its performance. Thetemperature control loop typically uses a traditional proportional,integral and derivative (PID) control algorithm to adjust the flowsetpoint based upon the temperature in the room. For stable control, lowgains are needed for the PID components, but for accurate control highgains are needed. Finding the correct gains is often a difficult process(called “tuning” the control system) and the result is a compromisebetween stability and accuracy.

A related problem exists in the control of Variable Temperature Control(VTC) temperature control systems. A typical example is the control of aheat exchange device (e.g., a coil or similar device) controlled by aflow regulation device (e.g., a control valve or similar device)adjusted by a micro-controller. Typically a PID control algorithm isused to determine the required position of the flow regulation device.This implementation suffers from at least the following drawbacks (1)the PID algorithm is best suited to linear systems, but the responsecurve of the heat exchange device and flow regulation device isnon-linear, (2) the gains of the PID algorithm are not known and requireconsiderable experience and trial-and-error adjustment to givesatisfactory results, and (3) the response time of the system typicallyinvolves long time delays, and the time delay can be considerably longerat start-up, when the heat exchange device, heat exchange medium (wateror other media), and media source (boiler, chiller, or other device) arenot at normal operating temperature; the response times are not known inadvance and cannot easily be predicted.

Accordingly, there remains a need for an improved control system thatovercomes some or all of the problems mentioned above.

SUMMARY OF THE INVENTION

The present invention provides an airflow control loop that usesaveraged airflow measurements without the problems that are normallyencountered with averaging measurements, such as the delay introducedinto the airflow control loop. This is accomplished, in the presentinvention, through the predictive control scheme. For example, thepresent invention measures the slope of the discharge temperature as afunction of flow regulation device position and uses this slope topredict the position of the flow regulation device needed to achieve thedesired discharge temperature. The present invention also monitors theresponse of a Variable Temperature Control (VTC) over time and utilizesa self-learning algorithm to predict the response time of the system inorder to determine when further control adjustments need to be taken.

In accordance with one embodiment of the present invention, a VTCtemperature control system includes a VTC box and a flow regulationdevice for controlling a volume of non-solid substance delivered to aheat exchange device within the VTC box, as well as a discharge airtemperature sensor for measuring the discharge air temperature from thesystem. The VCT system also may use a room temperature sensor formeasuring room temperature.

The VCT system includes a micro-controller for executingcomputer-executable instructions for receiving or calculating atemperature setpoint, typically based on a room temperature measurementfrom the room temperature sensor. A discharge air temperaturemeasurement is also received and an error is calculated between the twotemperature measurements.

The VCT system cycles through a number of steps until the time that anew room temperature measurement is received and a new temperaturesetpoint is calculated. Based on the previously calculated error, thesystem predicts a flow regulation device position adjustment in order toreach the temperature setpoint. If the predicted position adjustment isgreater than a minimum position adjustment, the system receivesdischarge air temperature measurements from the discharge airtemperature sensor while generating the signal for actuating the flowregulation device the predicted position adjustment or until one of thedischarge air temperature measurements is determined to have crossed thetemperature setpoint. After the movement of the flow regulation device,the system receives discharge air temperature measurements from thedischarge air temperature sensor to calculate the average discharge airtemperature and recalculates the error.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a pictorial diagram of the Pressure Independent VAV ControlSystem of the present invention.

FIG. 2 is a flow diagram illustrating the Slope Predictive ControlMethod of the present invention.

FIG. 3 is a flow diagram illustrating the Digital PID Control Method ofthe present invention.

FIG. 4 is a pictoral diagram of an embodiment of the PressureIndependent VCT Control System of the present invention.

FIG. 5 is a flow diagram illustrating an embodiment of the slopepredictive control method of the present invention.

DETAILED DESCRIPTION OF EXEMPLARY EMBODIMENT

The present invention now will be described more fully hereinafter withreference to the accompanying drawings, in which preferred embodimentsof the invention are shown. The present invention may be adapted for usein a wide variety of applications and is suitable for any temperaturecontrol system comprising a flow regulation device. By way ofillustration and not by way of limitation, unless indicated otherwise,the preferred embodiment is presented in the context of a VariableTemperature Control (VTC) system, wherein the control flow device is avalve. The initial discussion, however, pertains to the application ofthe present invention to a Variable Air Volume (VAV) system, wherein theflow control device is a damper.

In one embodiment, the present invention provides flow and temperaturecontrol loops to accomplish a Variable Air Volume (VAV) temperaturecontrol algorithm in a manner that addresses the problems encountered inthe control of prior art pressure independent VAV control systems.

To address the problem of noisy instantaneous signals representing flowmeasurements, the present invention averages the instantaneous flowmeasurements over a period of time. The averaging technique serves tosettle and eliminate a significant amount of the noise in theinstantaneous flow measurement signals, and provides a bettermeasurement of the average airflow into the room. Normally, when flowmeasurements are averaged over time, delay is introduced into thecontrol loop. This delay causes the flow controls to overshoot thesetpoint because by the time the averaging of the measurements iscomplete, the airflow control damper has moved past the desiredposition. The present invention avoids the overshoot problem by usinginstantaneous flow readings in situations where a fast response isneeded, then using average flow readings to get an accurate reading ofthe flow after the damper is moved and by using a predictive algorithm(rather than feedback control) for the next damper movement.

The following description will hereinafter refer to the drawings, inwhich like numerals indicate like elements throughout the severalfigures. FIG. 1 is a pictorial diagram of an illustrative system 100 forimplementing the Variable Air Volume (VAV) temperature control algorithmof an exemplary embodiment of the present invention. The system 100comprises a VAV box 102, an airflow control damper 104, an airflowsensor 106, a micro-controller 108, and a room temperature sensor 110.The flow control loop measures the airflow into a room, usingmeasurements from the airflow sensor 106. Airflow measurements are usedto calculate the slope of the airflow damper response curve (change inflow per unit of time) every time the airflow control damper 104 movesfor a measured period of time. For example, the flow control loop may beconfigured to calculate the change in airflow when the control damper106 moves for at least one second. A calculated change in airflow canthen be used to predict how long the airflow control damper 104 mustmove in order to deliver the appropriate flow rate needed formaintaining the desired room temperature setpoint.

If the temperature control loop makes a substantial change in theairflow setpoint, the nonlinear characteristic of the damper responsecurve may cause the predicted damper movement time, which is based uponthe slope of the damper response curve at the current operating point,to be incorrect. Thus, in accordance with the present invention, whenlarge setpoint changes occur, an instantaneous reading is used tocontrol the movement of the airflow control damper 104. In thissituation, the airflow control damper 104 is moved until anotherinstantaneous airflow is measured that is near or at the new airflowsetpoint. Then, the airflow control damper 104 is stopped and an averageairflow reading is taken over a particular period of time. At thispoint, the flow control loop has determined that the actual airflow inthe room is near the airflow setpoint, but the flow control loop has notdetermined the exact damper adjustment that is required to reach theairflow setpoint. The exact duration of the damper movement oradjustment for reaching the desired airflow setpoint is determined usingthe time duration of the initial damper movement and the average changein airflow during that time duration. From these measurements, the flowcontrol loop determines the sensitivity of the airflow control damper104 (the slope of the damper response curve). The sensitivity of theairflow control damper 104 is determined in terms of CFM or flow rateper second movement at a particular area on the damper's response curve.

Therefore, once the flow control loop has determined from theinstantaneous airflow measurement that the actual airflow in the room isclose to the airflow setpoint, the flow control loop calculates theslope of the damper response curve and is able to predict how long theairflow control damper 104 must move to reach the airflow setpoint. Thissecond corrective movement is made based on the damper runtime predictedby the flow control loop. The control loop does not base this secondcorrective movement on instantaneous airflow measurements, which includea substantial amount of noise. The second corrective movement of theairflow control damper 104 is based upon the sensitivity of the airflowcontrol damper 104 measured in terms of average change in airflow overthe initial damper movement time.

Once the airflow control damper 104 completes the predicted movement,the airflow control damper 104 is stopped. Then, the airflow controlloop measures the average airflow in the room. The airflow control loopuses the average airflow measurement because an average measurementreduces the noise in the flow measurement and provides an improvedmeasurement of the actual flow into the room. The average airflow iscritical in maintaining the room temperature setpoint because theaverage flow delivered to the room directly affects the roomtemperature.

In a preferred embodiment of the present invention, the airflow controlloop uses the averaged airflow measurements without the problems thatare normally encountered with averaging measurements, such as the delayintroduced into the airflow control loop. This is accomplished, in thepresent invention, through the predictive control scheme mentionedabove. The predictive control scheme of the airflow control loopcalculates the damper sensitivity, the predicted damper runtime, andthen moves the damper for the predicted runtime.

As a further enhancement of the present invention, the flow control loopmay be configured such that no corrective movement of the airflowcontrol damper 104 will occur if the predicted runtime is less than apredetermined minimum time period. The flow control loop may thus usethe predictive control scheme to achieve an airflow that is within anarrow deadband surrounding the airflow setpoint and not move theairflow control damper 104 unless there is a substantial change in theairflow, so that the average airflow deviation from the airflow setpointrequires a damper movement that is more than the predetermined minimumruntime.

As a result of using a minimum runtime, the flow control loop minimizesthe movement of the flow control damper 104 and increases the life ofthe damper operator mechanism (not shown). It has been discovered by theinventors that the predictive flow control loop of the present inventiondecreases the movement of the air flow control damper 104 by a factor often to a factor of one hundred as compared to the damper movements of aconventional control system.

In addition to the unique airflow control loop used to maintain theconstant airflow into the room, the present invention also implements adigital form of proportional, integral, and derivative (PID) control tomaintain the room temperature. The digital form of PID control has thesame general characteristics of traditional PID control, but uses gainswhich vary according to how far the measured temperature is fromsetpoint. For example, if the room temperature is far above thetemperature setpoint, the temperature control loop calls for fullcooling to cool the room quickly and return the room temperature to theroom temperature setpoint. The temperature control loop takes thisapproach to quickly satisfy the room temperature as well as to minimizethe damper movement. While in this full cooling mode, a high integralgain is used to quickly adjust the integral portion of the PID algorithmto better suit the current operating conditions. The magnitude of thisintegral gain depends on how far the integral term was from saturationat the time the controller called for full cooling.

Once the temperature is near setpoint, the temperature control loop useslower proportional, integral, and derivative gains to fine tune thecontrol and reach setpoint. A variation of traditional PID control isused at this point, the variation being that a fixed integral adjustmentis used each time cycle, rather than an adjustment that varies with theerror (difference between the measured temperature and the setpoint) andthe derivative term acts to counteract the integral term whenever itsenses the error is changing in the correct direction, and enables theintegral term whenever it senses that the error is unchanging or ischanging in the wrong direction. When the temperature is very close tothe temperature setpoint, the integral and derivative control terms aredisabled and a very low proportional gain is used to maintain theseconditions. In other words, the temperature control loop acts as if itwere using on/off control at the extremes, it uses a modified PIDcontrol when the temperature is within an acceptable range of setpoint,and it uses proportional control when the temperature is within a verynarrow “deadband” of the setpoint.

Traditional integral control is proportional to the error, which isdefined as the temperature deviation from setpoint. Since the integralaction is proportional to the error as the temperature comes close tosetpoint the temperature control loop calls for finer control movements.In order to achieve faster response in reaching setpoint and minimizethe damper movement, if the temperature is above setpoint, this controlscheme adjusts the integral action by some minimal amount every minuteregardless of the error. For example, the integral action may beadjusted by 1% for every minute. Furthermore, the temperature controlloop does not decrease the adjustment as the temperature comes closer tosetpoint.

If the temperature is outside the cooling temperature threshold, thetemperature control loop calls for either a 100% or 0% cooling. If thesystem is also used to provide heating, the control loop similarly callsfor 100% or 0% heating when the temperature is outside the heatingthreshold. In this circumstance, the temperature control loop alsostarts to accumulate the integral action much faster.

Because of the higher integral gain, when the temperature comes withinthe temperature threshold, the integral term is much closer to where itshould be to obtain the temperature setpoint. The speed with which theintegral output is built up depends on the distance that the damper wasfrom its maximum damper position when the temperature control loopinitiated the full cooling or heating mode. For example, if the damperis 20% open at the initiation of the full cooling or heating mode, theintegral output is accumulated much faster than if the damper was at 80%open. The integral output is non-linear. Once the temperature controlloop returns the room temperature to within the threshold, the finetuning adjustments are used to stay within the temperature threshold.

The present invention also uses the derivative action to act on theintegral gain. The temperature control loop uses the derivative actionin this manner because in digital systems the temperature control loopcan only measure the temperature in one-bit increments. In between theone-bit increments, there is no detected change in temperature,therefore the derivative action will only take effect when thecontroller registers the one bit change from one measurement to thenext. In digital systems, therefore, conventional derivative actionbecomes discontinuous and the derivative gain may be set so low that itis ineffective or the derivative gain may be set so high that it drivesthe controller output in the opposite direction.

In the present invention, if the temperature is not changing or if thetemperature is moving away from setpoint, the temperature control loopallows the integral gain to act normally. This is the normal mode ofoperation. When the temperature starts moving toward setpoint, thetemperature control loop actually decreases the integral gain to avoidovershooting the temperature setpoint.

From the above description of the present invention, it will be apparentto one of ordinary skill in the art that this invention can beimplemented as computer executable instructions that can be executed onany processor-driven system. Having described the system 100 forimplementing the slope predictive control and the digital PID control inaccordance with an embodiment of the present invention, illustrativemethods of carrying out the invention will be described with referenceto FIG. 2 and FIG. 3.

FIG. 2 is a flow diagram of an illustrative Slope Predictive Controlmethod 200 for controlling airflow control damper movement andmaintaining the airflow setpoint into a room. The illustrative method200 will be described below with reference to the elements of system100. The Slope Predictive Control method 200 begins at start step 202and proceeds to step 204 where a new airflow setpoint (NewFlowSp) isreceived from the temperature control loop. By way of illustrations, thenew airflow setpoint may be calculated by the temperature control loopusing the following formula:

NewFlowSp=PID_(out)*MaxCFM

where PID_(out) is the PID output of the PID control (see FIG. 3 below)of the present invention and MaxCFM is the maximum CFM for theparticular VAV box. Next the method 200 proceeds to step 206.

At step 206, the percent change between the new airflow setpoint and theprevious airflow setpoint is calculated. For example, the change inairflow setpoint may be calculated using the following formula:

${\% \mspace{11mu} \Delta \; {SP}} = \frac{{FlowSp}_{new} - {FlowSP}_{previous}}{MaxCFM}$

where % ΔSP is the percent change in the airflow setpoint, FlowSp_(new)is the newly calculated airflow setpoint value and FlowSp_(previous) isthe last airflow setpoint.

Next the method 200 proceeds to step 208, where a determination is madeas to whether the percent change in airflow setpoint is greater than apredetermined percent change in setpoint. For example, the predeterminedpercent change in setpoint may be set at 5% or some other systemoperator definable percentage. If at step 208 it is determined that thepercent change in setpoint (calculated at step 206) is greater than thepredetermined percent change in setpoint, the method 200 proceeds tostep 210. At step 210, the new airflow setpoint (calculated at step 204)replaces the previous airflow setpoint. From step 210, the method 200proceeds to step 212.

However, if it was determined at step 208 that the percentage change insetpoint (calculated at step 206) is less than the predetermined percentchange in setpoint, the method 200 proceeds to step 211, where the newsetpoint is disregarded in favor of the previous setpoint. From step211, the method 200 proceeds to step 212.

At step 212, the actual airflow is measured and the error between theairflow setpoint (from step 210 or step 211) and the actual flowmeasurement is calculated. The actual airflow measurement is preferablymeasured as an average over a predetermined period of time. Next at step214, the runtime of the airflow control damper 104 is predicted. In oneembodiment of the present invention, the predicted runtime of theairflow control damper 104 is calculated by dividing the error betweenthe airflow setpoint and the actual airflow by the slope of the damperresponse curve. In the initial pass through the method 200, the slope ofthe damper response curve is set to a predetermined value or iscalculated, for example, by dividing the maximum CFM by the predictedruntime of the airflow control damper 104. For any other iterationthrough the method 200, the slope is calculated by dividing the measuredchange in average airflow (see steps 226 & 228 below) by the actualruntime of the airflow control damper 104 from the most recent dampermovement.

Once the airflow control damper movement is predicted, the method 200proceeds to step 216. At step 216, a determination is made as to whetherthe predicted damper runtime is greater than a first minimum runtime,which is required to protect the damper motor. This minimum runtime maybe, for example, 1 second. If at step 216, it is determined that thepredicted damper runtime time is less than the first minimum runtime,the method 200 proceeds to step 218 and the airflow control damper 104is not moved. From step 218, the method 200 returns to step 212 and theprocess is repeated. However, if it is determined at step 216 that thepredicted damper runtime is greater than the first minimum runtime, themethod proceeds to step 220, where it is determined whether thepredicted damper runtime is greater than a second minimum runtime. Thesecond minimum runtime determines whether the damper movement is shortenough that the current slope measurement can accurately be used topredict the required run time. The second minimum runtime may be set at,for example, 11 seconds or any other system operator definable duration.If the predicted movement time is less than the second minimum runtime,then, at step 222, the airflow control damper 104 is run for thepredicted damper runtime. However, if at step 220 it is determined thatthe predicted runtime is greater than the second minimum runtime, themethod 200 proceeds to step 224. At step 224, the airflow control damper104 is run until the airflow sensor 106 supplies an instantaneousreading to the micro-controller 108 indicating that the actual airflowis greater than the airflow setpoint.

After the appropriate movement of the damper at either step 222 or step224, the method 200 advances to step 226, where the micro-controller 108calculates a new average airflow reading. Next at step 228, a new slopeof the damper response curve is calculated. The slope is calculated bydividing the change in average airflow by either the damper runtime ofstep 222 or the damper runtime of step 224. The change in averageairflow is calculated by taking the absolute value of the differencebetween the previous average airflow reading (from the previousiteration) and the new average airflow reading calculated at step 226.

After determining the new slope of the damper response curve, method 200proceeds to step 230, where it is determined whether the predicteddamper runtime (calculated at step 214) was less than or equal to athird minimum runtime. This third minimum runtime represents the minimumdamper movement needed to get an accurate reading of the slope of thedamper response curve, taking into consideration the fact that thereal-world damper linkage will have hysteresis and other non-linearitiesthat affect the accuracy of short damper movements. By way of exampleonly, the third minimum runtime may be two seconds or some other systemoperator definable duration. If the predicted damper runtime is lessthan or equal to the third minimum runtime, the method 200 proceeds tostep 232, where the new slope of the damper response curve (calculatedat step 228) is disregarded and the previously calculated slope value isused in the next iteration of the method 200. The new slope calculationis disregarded at step 232 because, for a sufficiently short damperruntime, the build-up in the motor magnetic field, motor friction, andslop in the damper linkage make it difficult to take an accuratemeasurement of the actual damper runtime and therefore leads to aninaccurate measurement of the slope of the damper response curve.

If at step 230 it was determined that the predicted damper runtime wasnot less than or equal to the third minimum runtime, the method 200proceeds to step 234, where it is determined whether the damper runtime(executed at either step 222 or 224) was within a predetermined runtimerange. By way of example only, the predetermined runtime range may befrom may be from greater than two (2) seconds to less than or equal tofour (4) seconds. If at step 234 the damper runtime is determined to bewithin the predetermined runtime range, the new slope of the damperresponse curve (calculated at step 228) is averaged with the previousslope of the damper response (i.e., the slope value used in the previousiteration of the method 200) at step 236. The new slope value and theprevious slope value are averaged in order to minimize inaccuracies inthe slope calculation due to build-up in the motor magnetic field, motorfriction, and slop in the damper linkage. Once step 236 is complete, themethod 200 returns to step 212 and begins a new iteration.

However, if at step 234 it is determined that the damper runtime(executed at either step 222 or 224) is not within the predeterminedruntime range, the method 200 proceeds to step 238, where the new slopeof the damper response curve (calculated at step 228) replaces theprevious slope value. After step 238 is complete, the method 200 returnsto step 212 and begins a new iteration. Those skilled in the art willappreciate that the flow control method 200 may be continuously repeatedin order to maintain the airflow in a room for a given airflow setpoint.If at any point during execution of the method 200 a new airflowsetpoint is received from the temperature control loop, the method isrestarted from step 202.

FIG. 3 is a flow diagram illustrating an exemplary digital Proportional,Integral and Derivative (PID) control method 300 used for setting anappropriate airflow setpoint to maintain a room temperature. The digitalPID control method 300 begins at start step 302 and then proceeds tostep 304, where the temperature error is calculated. The temperatureerror may be calculated by determining the difference between theaverage room temperature measured over a period of time and the roomtemperature setpoint. The period of time for measuring the average roomtemperature may be, for example, 10 seconds.

Next at step 306, a determination is made as to whether the temperatureerror (calculated at step 304) is greater than a temperature thresholdvalue. The temperature threshold may be defined by the system operator.This threshold determines if the temperature is close enough to setpointto use the moderate PID gains, or if output needs to jump to 100% or 0%to bring the temperature back into a tolerable range as quickly aspossible. This threshold value may be, say +/−1 degree Fahrenheit. If itis determined at step 306 that the temperature error is not greater thanthe temperature threshold, the method 300 proceeds to step 316, which isexplained below. However, if it is determined at step 306 that thetemperature error is greater than the temperature threshold, the method300 proceeds to step 308, where the starting PID output percentage issaved. Once the starting PID is saved at step 308, the method 300proceeds to step 310. At step 310, the airflow setpoint is calculatedusing a significantly increased or decreased PID output percentage(e.g., a PID output percentage of 100% or 0%, depending on whether theroom was too hot or too cold.) A setting of 100%, for example, fullyopens the airflow control damper 104 to provide full cooling to the roomwith a minimum number of damper movements. For simplicity ofexplanation, only the case where the temperature is above setpoint willbe described in the following steps. The situation where the temperatureis below setpoint is identical, except that the integral term (I) isdecreased rather than increased with each step.

Also at step 310, the integral term (I) of the PID control isaccumulated. The integral term (I) of the PID control may beaccumulated, for example, using the formula that follows:

I=I _(previous)+(100%−Starting Output)/12

I_(previous)=0, at startup

Those skilled in the art will recognize that the term “12” in the aboveequation may be replaced by any fixed divisor. From step 310, method 300proceeds to step 312 to wait for the expiration of an increment of time.After the increment of time expires, the method proceeds to step 313 fora measurement of the room temperature and a new calculation of thetemperature error (the difference between the average room temperaturemeasured over a period of time and the room temperature setpoint). Thenat step 314 it is determined whether the temperature error is greaterthan the temperature threshold value. If the temperature error is stillgreater than the temperature threshold value, the method 300 returns tostep 310 and performs the calculations described above.

However, if it is determined at step 314 that the temperature error isnot greater that the temperature threshold value, the method 300proceeds to step 316, where it is determined if the error is within adeadband near the temperature setpoint. If the error is within thedeadband, then the method 300 proceeds to step 318 where a new PIDoutput is computed, with only the P term being updated. In this step theintegral (I) term is “frozen” at its previous value and only the P termis updated, using the formulae:

P=20%*Temperature Error

PID_(Output)=P+I_(previous)

If it is determined at step 316 that the temperature error is not withinthe deadband, the method 300 proceeds to step 320 where a new PID outputis calculated by updating both the proportional term and the integralterm, such as by using the following formulae:

P=20%*Temperature Error

If the current error is ≧the previous error, I=I_(previous)+1%

If the current error is <the previous error, I=I_(previous)−1%

PID_(Output)=P+I

Again, those skilled in the art will recognize that the terms “20%” and“1%” in the above equations may be replaced by other appropriatepercentages. The PID output (calculated at either step 318 or 320) maybe used at step 322 to calculate a new airflow setpoint, which may becommunicated to the flow control loop (e.g., see step 204 of theexemplary Slope Predictive Control method 200 above.) After the new PIDoutput has been calculated at step 322, the method 300 returns to step304 and repeats the calculations.

FIG. 4 is a pictorial diagram of an illustrative system 400 forimplementing a Variable Temperature Control (VTC) temperature controlalgorithm of an exemplary embodiment of the present invention. Thesystem 400 comprises a VTC box 402, a flow regulation device 404, adischarge air temperature sensor 406, a micro-controller 408, and a heatexchange device 410, such as a heating coil. The flow regulation devicemay for example, be a valve to control the volume of fluid or gasentering the heat exchange device 410, or any other suitable deviceknown in the art to regulate the flow of fluids or gases through a heatexchange device 410. In the case of a valve, the position of the valvebetween 0%-100% open is typically controlled by an analog output fromthe VTC controller. The fluid or gas passing through heat exchangedevice 410 can be for heating or cooling, such as hot or cold water,respectively. The heat exchange device 410 can be of any shapeappropriate for the system and may be composed of appropriate materialsto best transfer the fluid or gas contained therein and/or to maximizethe efficiency of the temperature transfer of the heat exchange device410. One exemplary embodiment of a heat exchange device 410 could be asystem of coils.

The flow control loop of system 400 measures the discharge airtemperature, using measurements from the discharge air temperaturesensor 406. Discharge air temperature measurements are used to calculatethe slope of the flow regulation device response curve (change indischarge temperature per movement of the flow regulation device) everytime the flow regulation device 404 moves for a measured portion of itsstroke. For example, the flow control loop may be configured tocalculate the change in discharge air temperature when the flowregulation device 404 moves for at least one second. A calculated changein discharge air temperature can then be used to predict how long theflow regulation device 404 must move in order to deliver the appropriateflow rate needed for maintaining the desired room temperature setpoint.

The flow regulation device 404 controls the flow rate of a non-solidsubstance through heat exchange device 410. The calculated positionadjustment controls the increase or decrease in flow rate by operatingto open or close the valve the correct amount. However, in analternative embodiment of the current invention, the flow regulationdevice 404 may be in the form of a heating element with and associatedsetting as opposed to an associated runtime. Movement to a particularsetting may replace movement for a particular runtime, as discussedabove in the case of the damper of a VAV box. An associated runtime forthe heating element may be represented by the time it takes the systemto set the heating element to a selected setting. In the presentembodiment, however, runtime is replaced by a predicted settingposition, also referred to herein as the position adjustment.

If the temperature control loop makes a substantial change in thedischarge air temperature setpoint, the nonlinear characteristic of theflow regulation device response curve may require more than one valvemovement to achieve setpoint. In accordance with an aspect of thepresent invention, when large setpoint changes occur, an instantaneousreading may used to control the movement of the flow regulation device404. For example, if an instantaneous measurement shows the system haspassed the setpoint by more than the deadband and is still moving awayfrom setpoint, then the slope predictive method may generate a newoutput to move the system back towards setpoint even though thepredicted position has not yet been reached.

Therefore, once the flow control loop of system 400 has determined fromthe instantaneous discharge air temperature measurement that the actualdischarge air temperature in the room is close to the discharge airtemperature setpoint, the flow control loop calculates the slope of theflow regulation device response curve and is able to predict how far theflow regulation device 404 must move to reach the discharge airtemperature setpoint. This corrective movement is made based on the flowregulation device position predicted by the flow control loop. Thecontrol loop does not base this corrective movement on instantaneousdischarge air temperature measurements, which include a substantialamount of noise. The corrective movement of the flow regulation device404 is based upon the sensitivity of the flow regulation device 404measured in terms of average change in discharge air temperature overthe initial flow regulation device movement.

Once the flow regulation device 404 completes the predicted movement,the flow regulation device 404 is stopped. The controller then monitorsthe discharge temperature to determine when the system has stabilized,and uses this measurement to update the position response constant ofthe system as appropriate. Then, the flow control loop measures theaverage discharge air temperature. The flow control loop uses theaverage discharge air temperature measurement because an averagemeasurement reduces the noise in the flow measurement and provides animproved measurement of the actual discharge air temperature.

In a preferred embodiment of the present invention, the control loopuses the averaged discharge air temperature measurements without theproblems that are normally encountered with averaging measurements, suchas the delay introduced into the control loop. This is accomplished, inthe present invention, through the predictive control scheme mentionedabove. The predictive control scheme calculates the system sensitivity,the predicted movement of the flow regulation device needed to achievesetpoint, and then moves the flow regulation device to the predictedposition.

FIG. 5 is a flow diagram illustrating an exemplary digital controlmethod 500 used for controlling a flow regulation device to maintain adischarge temperature utilizing the VTC control algorithm describedherein. The digital control method 500 begins at step 502 by settinginitial values for the time constant, deadband constant, slope constant,and related flags. The heat exchange device's 410 time constant is notgenerally known by the personnel engineering the control system, thecontrol algorithm for the heat exchange device control includes codewhich measures the actual system response and corrects the initial valueas appropriate.

Next at step 504, a determination is made as to whether the temperatureerror is less than the deadband constant. The deadband constant may bedefined by the system operator. The deadband is typically set so thatthe valve does not move if the measured temperature is within aspecified tolerance of the setpoint. If at step 504 the temperatureerror is determined to be greater than the deadband constant, then thesystem repeats the determination of the error and proceeds back to step504. If the temperature error is determined to be less than the deadbandconstant, then the method proceeds to step 506 where it is determinedwhether or not the temperature setpoint has changed. The temperaturesetpoint determines the target discharge air temperature for the system.If the setpoint has changed, then the method proceeds to step 508, wherethe setpoint value is updated in the temperature control system. Themethod then proceeds to step 510. However, if at step 506 it isdetermined that the setpoint has not changed, then the method proceedsdirectly to step 510.

At step 510, the data provided is used by the slope algorithm to adjustthe discharge air temperature output level. The slope algorithm can beused to predict the movement required to achieve the new temperaturesetpoint.

After the temperature output is adjusted to the designated level, themethod proceeds to step 512, where the control system waits for theexpiration of an increment of time. After the increment of time expires,the method proceeds to step 514, where it is determined whether or notthe temperature control system has started responding to the adjusteddischarge air temperature output level. If step 514 determines that thesystem has started responding to the request for discharge airtemperature output change, then the method proceeds to step 528. If step514 determines that the system has not begun responding to the adjusteddischarge air temperature output value, then the method proceeds to step516, where a determination is made as to whether the system has waitinglonger than a period of two time constants.

If the method in step 516 determines that the system has not waitedlonger than two time constants, then the method proceeds to step 518,where it is determined whether the discharge air temperature has movedin the wrong direction for a period of five consecutive wait cycles. Ifstep 518 determines that the discharge air temperature has moved in thewrong direction for five consecutive wait cycles, then the methodproceeds to step 526 where the output is bumped to the correct level.However, if step 518 determines that the discharge air temperature hasnot moved in the wrong direction for five consecutive wait cycles, thenthe method proceeds back to step 512 to wait for the expiration of anincrement of time.

If the method in step 514 determines that the system has startedresponding to the request for discharge air temperature output change,then the method proceeds to step 528, where a determination is made asto whether the system has waited longer than a period of, for example,two time constants. If the method in step 528 determines that the systemhas not waited longer than two time constants, then the method proceedsto step 530, where it is determined whether the discharge airtemperature change has overshot the setpoint temperature value by anamount greater than the deadband constant. However, if the method instep 528 determines that the system has waited longer than two timeconstants, then the method returns to step 504.

If the method in step 530 determines that the system has overshot thesetpoint discharge air temperature by an amount greater than thedeadband constant, then the method proceeds to step 532 where adetermination is made as to whether the system has overshot the setpointdischarge air temperature by an amount greater than, for example, fivetimes the deadband constant and whether the overshoot time is greaterthan one-half of the time constant. If the method at step 532 determinesthat the system has overshot the setpoint discharge air temperature byan amount greater than five times the deadband constant or that theovershoot time is greater than one-half of the time constant, then themethod returns back to step 504 which is described fully above.

However, if the method at step 532 determines that the system has notovershot the setpoint discharge air temperature by an amount greaterthan five times the deadband constant, or that the overshoot time isgreater than one-half of the time constant then the method returns tostep 532 in a loop procedure until the system has overshot the setpointdischarge air temperature by an amount greater than five times thedeadband constant, or the overshoot time is greater than one-half of thetime constant.

If the method in step 530 determines that the system has not overshotthe setpoint discharge air temperature by an amount greater than thedeadband constant, then the method proceeds to step 534 where adetermination is made as to whether the output is still changing. Ifstep 534 determines that the output is still changing, then the methodreturns to step 528, which is described in detail fully above. If step534 determines that the output is no longer changing, then the methodproceeds to step 536, where the slope value is adjusted to equal theresult of the addition of seventy-five percent of the previous slope andtwenty-five percent of the time it took for the system to complete themove in temperature settings. Once the new slope value is computed, themethod returns back to step 504 which is described fully above.

The specific examples provided above pertained to temperature and flowcontrol in facility heating and air conditioning systems; however, theapplicability of the present invention is not limited to these examples.The principles involved are equally applicable to any control systemconsisting of a controlled device (valve, damper, variable speed drive,etc.), a controlled variable (temperature, pressure, flow, current,etc.), and a feedback controller (digital or analog). Many otherapplications could be controlled by utilizing the principle of measuringthe sensitivity of the system (the slope of the controlled variableversus controlled device relationship), utilizing this sensitivity topredict the change in the controlled device needed to obtain a desiredchange in the controlled variable, adjusting the controlled deviceaccording to this prediction, and using the results of this adjustmentto update the sensitivity for subsequent adjustments. Furthermore, ifthe feedback controller utilizes a PID algorithm, the principles ofdefining two or more bands of operation, utilizing different gainswithin each band, and implementing modified PID actions as described inthese claims can be equally valid for these other applications.

Although the present invention has been described above with referenceto certain exemplary embodiments of a VTC Control System, many othermodifications, features, embodiments and operating environments of thepresent invention will become evident to those of skill in the art.Thus, various alternative embodiments will become apparent to thoseskilled in the art and are considered to be within the spirit and scopeof the present invention. It should be appreciated that many aspects ofthe present invention were described above by way of example only andare, therefore, not intended as required or essential elements of theinvention. Furthermore, any references herein to predetermined values,minimum values, thresholds and/or specific formulae should be understoodas being provided by way of illustration only. Predetermined values,thresholds and formulae may all be defined and re-defined by a systemoperator in order to better suit the present invention to a particularenvironment or situation.

Furthermore, from a reading of the foregoing description of certainexemplary embodiments, those skilled in the art will recognize that theslope predictive control and the digital PID control principles of thepresent invention may have applicability in control system other thanVTC temperature control systems. In particular, the control principlesof the present invention may be applicable in any non-linear controlsystem, including any control system for controlling a damper, valve,inlet control vane, etc. Accordingly, although the present invention isdescribed herein with reference to VTC temperature control systems, itshould be understood that the description is provided by way of exampleonly and not by way of limitation. Accordingly, the scope of the presentinvention is defined only by the appended claims rather than the byforegoing description of exemplary embodiments.

1. A method for implementing PID control having a proportional term, anintegral term, and a derivative term, the method comprising: receiving acontrolled variable measurement and calculating an error between thecontrolled variable measurement and a desired condition; defining atleast two distinct regions of operation based at least in part on theerror, wherein each region has a predetermined gain set; and based onthe error, (i) determining a region of operation from the at least twodistinct regions, (ii) calculating a PID output using a gain setassociated with that region, and (iii) after the expiration of a timeincrement, re-measuring the controlled variable, re-calculating theerror and repeating steps (i)-(iii).
 2. The method of claim 1, whereinat least one gain set comprises significantly increasing the PID outputand accumulating the integral term at an accelerated rate.
 3. The methodof claim 1, wherein at least one gain set comprises updating theproportional term but not updating the integral term.
 4. The method ofclaim 2, wherein at least one gain set comprises updating theproportional term and the integral term.
 5. The method of claim 1,wherein at least one gain set increments the integral term at a fixedrate not varying with the error.
 6. The method of claim 1, wherein atleast one gain set implements derivative control action by enabling ordisabling the integral action.
 7. The method of claim 1, furthercomprising calculating a setpoint based on the PID output.
 8. A methodfor implementing PID control having a proportional term, an integralterm, and a derivative term, the method comprising: measuring acontrolled variable; calculating an error between the controlledvariable and a desired condition; comparing the error to a threshold; ifthe error is within the threshold, setting a PID output to a maximumvalue and accumulating the integral term; if the error is within thethreshold, determining whether the error is within a deadband; if theerror is within the deadband, calculating the PID output by updatingonly the proportional term; and if the error is outside the deadband,calculating the PID output by updating the proportional term and theintegral term.
 9. The method of claim 8, wherein the step of measuringthe controlled variable comprises determining an average of thecontrolled variable over a period of time.
 10. The method of claim 9,wherein the period of time comprises ten seconds.
 11. The method ofclaim 8, further comprising defining the threshold by a user.
 12. Themethod of claim 8, wherein the maximum value comprises 100% or 0%. 13.The method of claim 8, wherein accumulating the integral term comprises:saving a starting PID output percentage (Starting Output); setting aprevious integral term (I_(previous)) equal to 0 at startup; andaccumulating the integral term using the formula:I_(previous)+(100%−Starting Output)/12.
 14. The method of claim 8,wherein calculating the PID output by updating only the proportionalterm comprises: setting the proportional term equal to a percentage ofthe error; and adding the proportional term to the integral term. 15.The method of claim 14, wherein the percentage is 20 percent.
 16. Themethod of claim 8, wherein calculating the PID output by updating theproportional term and the integral term comprises: setting theproportional term equal to a percentage of the error; and adding asecond percent to the integral term if a current error is greater thanor equal to a previous error; subtracting the second percent from theintegral term if the current error is less than the previous error; andadding the proportional term to the integral term.
 17. The method ofclaim 16, wherein the percentage is 20 percent.
 18. The method of claim16, wherein the second percentage is 1 percent.
 19. The method of claim8, further comprising calculating a setpoint using the PID output.